home *** CD-ROM | disk | FTP | other *** search
/ Collection of Internet / Collection of Internet.iso / faq / comp / linux / howto / mail < prev    next >
Internet Message Format  |  1994-03-15  |  15KB

  1. Path: bloom-beacon.mit.edu!hookup!swrinde!emory!news-feed-2.peachnet.edu!concert!bigblue.oit.unc.edu!sunSITE!mdw
  2. From: vince@victrola.wa.com (Vince Skahan)
  3. Newsgroups: comp.os.linux.announce,comp.os.linux.admin,comp.answers,news.answers
  4. Subject: Linux Electronic Mail HOWTO
  5. Followup-To: poster
  6. Date: 16 Mar 1994 05:27:17 GMT
  7. Organization: The University of North Carolina at Chapel Hill
  8. Lines: 402
  9. Approved: linux-announce@tc.cornell.edu (Matt Welsh)
  10. Message-ID: <2m65bl$e15@bigblue.oit.unc.edu>
  11. Reply-To: vince@victrola.wa.com (Vince Skahan)
  12. NNTP-Posting-Host: calzone.oit.unc.edu
  13. Originator: mdw@sunSITE
  14. Xref: bloom-beacon.mit.edu comp.os.linux.announce:1953 comp.os.linux.admin:5614 comp.answers:4183 news.answers:16452
  15.  
  16. Archive-name: linux/howto/mail
  17. Last-modified:  26 January 1994 
  18.  
  19. The Linux Electronic Mail HOWTO
  20. by Vince Skahan, <vince@victrola.wa.com>
  21. v1.4, Last Modified 26 January 1994 
  22. ---------------------------------------------------------------------------
  23.  
  24. This document describes the setup and care+feeding of Electronic Mail
  25. (e-mail) under Linux.
  26.  
  27. You need to read this if you plan to communicate locally or to remote sites
  28. via electronic mail.
  29.  
  30. You probably do *not* need to read this document if don't exchange
  31. electronic mail with other users on your system or with other sites.
  32.  
  33.  
  34. 0.  Introduction
  35.  
  36.     The intent of this document is to answer some of the questions and
  37.     comments that appear to meet the definition of 'frequently asked
  38.     questions' about e-mail software under Linux.
  39.  
  40.     This document and the corresponding UUCP and News 'HOWTO' documents
  41.     collectively supersede the UUCP-NEWS-MAIL-FAQ that has previously
  42.     been posted to comp.os.linux.announce.
  43.  
  44.  
  45. 0.1 New versions of this document
  46.  
  47.     New versions of this document will be periodically posted to
  48.     comp.os.linux.announce, comp.answers, and news.answers.  They will
  49.     also be added to the various anonymous ftp sites who archive such
  50.     information including sunsite.unc.edu:/pub/Linux/docs/HOWTO.
  51.  
  52.  
  53. 0.2 Feedback
  54.  
  55.     I am interested in any feedback, positive or negative, regarding
  56.     the content of this document via e-mail.  Definitely contact me if
  57.     you find errors or obvious omissions.
  58.  
  59.     I read, but do not necessarily respond to, all e-mail I receive.
  60.     Requests for enhancements will be considered and acted upon based on
  61.     that day's combination of available time, merit of the request, and
  62.     daily blood pressure :-)
  63.  
  64.     Flames will quietly go to /dev/null so don't bother.
  65.  
  66.     Feedback concerning the actual format of the document should go to
  67.     the HOWTO coordinator - Matt Welsh (mdw@sunsite.unc.edu).
  68.  
  69.  
  70. 0.3 Copyright Information
  71.  
  72.     The Mail-HOWTO is copyrighted (c)1994 Vince Skahan. 
  73.  
  74.     A verbatim copy may be reproduced or distributed in any medium physical
  75.     or electronic without permission of the author.  Translations are
  76.     similarly permitted without express permission if it includes a notice
  77.     on who translated it.
  78.  
  79.     Short quotes may be used without prior consent by the author.
  80.     Derivative work and partial distributions of the Mail-HOWTO must be
  81.     accompanied with either a verbatim copy of this file or a pointer to
  82.     the verbatim copy.
  83.  
  84.     Commercial redistribution is allowed and encouraged; however, the
  85.     author would like to be notified of any such distributions.
  86.  
  87.     In short, we wish to promote dissemination of this information through
  88.     as many channels as possible. However, we do wish to retain copyright
  89.     on the HOWTO documents, and would like to be notified of any plans to
  90.     redistribute the HOWTOs.
  91.  
  92.     We further want that ALL information provided in the HOWTOS is
  93.     disseminated. If you have questions, please contact Matt Welsh, the
  94.     Linux HOWTO coordinator, at mdw@sunsite.unc.edu, or +1 607 256 7372.
  95.  
  96.  
  97. 0.4 Standard Disclaimer
  98.  
  99.     Of course, I disavow any potential liability for the contents of this 
  100.     document.  Use of the concepts, examples, and/or other content of this
  101.     document is entirely at your own risk.
  102.  
  103.  
  104. 0.5 Other sources of information
  105.  
  106.     LINUX HOWTO Documents:
  107.     ======================
  108.  
  109.     There is plenty of exceptional material provided in the other Linux
  110.     HOWTO documents and from the Linux DOC project.  In particular, you
  111.     might want to take a look at the following:
  112.  
  113.         - the serial communications HOWTO
  114.         - the ethernet HOWTO
  115.         - the Linux Networking Guide
  116.  
  117.     USENET:
  118.     =======
  119.     comp.mail.elm            the ELM mail system.
  120.     comp.mail.mh            The Rand Message Handling system.
  121.     comp.mail.mime            Multipurpose Internet Mail Extensions.
  122.     comp.mail.misc            General discussions about computer mail.
  123.     comp.mail.multi-media    Multimedia Mail.
  124.     comp.mail.mush            The Mail User's Shell (MUSH).
  125.     comp.mail.sendmail        the BSD sendmail agent.
  126.     comp.mail.uucp            Mail in the uucp environment.
  127.  
  128.  
  129.     Mailing Lists:
  130.     ==============
  131.  
  132.     There is a smail-3.1 mailing list.  
  133.  
  134.     To join (or get off) the list, send mail to
  135.         smail3-users-request@cs.athabascau.ca
  136.  
  137.     make sure that you include the address at which you want to receive
  138.     mail in the text of the message.
  139.  
  140.     To send a message to the list, send it to
  141.         smail3-users@cs.athabascau.ca.
  142.  
  143.     Books:
  144.     ======
  145.  
  146.     The following is a non-inclusive set of books that will help...
  147.  
  148.     'Managing UUCP and USENET' from O'Reilly and Associates is in my
  149.     opinion the best book out there for figuring out the programs and
  150.     protocols involved in being a USENET site.
  151.  
  152.     'Unix Communications' from The Waite Group contains a nice
  153.     description of all the pieces (and more) and how they fit together.
  154.  
  155.     'Sendmail' from O'Reilly and Associates looks to like the
  156.     definitive reference on sendmail-v8 and sendmail+IDA.
  157.     It's a "must have" for anybody hoping to make sense out of
  158.     sendmail without bleeding in the process.
  159.  
  160.     'The Internet Complete Reference' from Osborne is a fine reference
  161.     book that explains the various services available on Internet and
  162.     is a great "one-stop-shopping" source for information on news, mail,
  163.     and various other Internet resources.
  164.  
  165.  
  166. 0.6 Where *NOT* to look for help
  167.  
  168.     There is nothing 'special' about configuring and running mail under
  169.     Linux (any more).  Accordingly, you almost certainly do *NOT* want
  170.     to be posting generic mail-related questions to the comp.os.linux.*
  171.     newsgroups.
  172.  
  173.     Unless your posting is truly Linux-specific (ie, "please tell me
  174.     what routers are already compiled into the SLS1.03 version of
  175.     smail3.1.28") you should be asking your questions in one of the
  176.     newsgroups or mailing lists referenced above.
  177.  
  178.     Let me repeat that.
  179.  
  180.     There is virtually no reason to post anything mail-related in the
  181.     comp.os.linux hierarchy any more.  There are existing newsgroups in
  182.     the comp.mail.* hierarchy to handle *ALL* your questions.
  183.  
  184.  
  185. 1.0 Hardware Requirements
  186.  
  187.     There are no specific hardware requirements for mail under Linux.
  188.  
  189.     You'll need some sort of 'transport' software to connect to remote
  190.     systems, which means either tcp-ip or uucp.   This could mean that
  191.     you need a modem or ethernet card (depending on your setup).
  192.  
  193.  
  194. 2.0 Getting the software
  195.  
  196.     In general, I grab my sources from ftp.uu.net and the other fine
  197.     archive sites on Internet.  In addition, Linux-specific binary ports
  198.     are found in the usual Linux distrbutions and on the usual Linux
  199.     anonymous ftp sites (sunsite.unc.edu and tsx-11.mit.edu in
  200.     particular).
  201.  
  202.     The newspak-2.0.tar.z distribution contains config files and readme
  203.     files related to building uucp, news, and mail software under Linux
  204.     from the various freely-available sources.  It can usually be found 
  205.     on sunsite.unc.edu in the directory /pub/Linux/system/Mail.
  206.  
  207.  
  208. 3.0 Mail 'Transport Agents'
  209.  
  210.     This section contains information related to 'transport agents',
  211.     which means the underlying software that connects your local system
  212.     to remote systems.
  213.  
  214.  
  215. 3.1 Smail v3.1
  216.  
  217.     Smail3.1 seems to be a de-facto standard transport agent for uucp-only
  218.     sites and for some smtp sites.  It compiles without patching from
  219.     the sources.  In addition, smail is provided in binary form in the
  220.     SLS distribution of Linux.
  221.  
  222.     The newspak distribution contains config files for smail3.1.28 under
  223.     Linux that you can use to start with.
  224.     
  225.     If you're building smail from sources, you need to have
  226.     CASE_NO_NEWLINES=true in your os/linux file so that 'sed' gives
  227.     you shell scripts that work properly.
  228.     
  229.     For a uucp-only system that has a MX-record and that wants a
  230.     domainized header (who goes through a smart-host for everything),
  231.     these are the entire config files you'll need:
  232.  
  233.     replace 'subdomain.domain' with your domain name
  234.     replace 'myhostname' with you un-domainized hostname
  235.     replace 'my_uucp_neighbor' with the uucp name of your upstream site
  236.  
  237.     #-------- /usr/local/lib/smail/config -----------------
  238.     #
  239.     # domains we belong to
  240.     visible_domain=subdomain.domain:uucp
  241.     #
  242.     # who we're known as (fully-qualified-site-name)
  243.     visible_name=myhostname.subdomain.domain
  244.     #
  245.     # who we go through
  246.     smart_path=my_uucp_neighbor
  247.     #
  248.     #---------- /usr/local/lib/smail/paths --------------
  249.     #
  250.     # we're a domainized site, make sure we accept mail to both names
  251.     myhostname        %s
  252.     myhostname.subdomain.domain      %s
  253.     #
  254.     #-------------------------------------------------------------------
  255.  
  256.     To run smail as a smtp daemon, add the following to /etc/inetd.conf:
  257.         smtp stream tcp nowait  root  /usr/bin/smtpd smtpd
  258.  
  259.     Outgoing mail gets sent automatically, when using elm. If your
  260.     internet link is down when you send mail, then the mail sits in 
  261.     '/usr/spool/smail/input'. When the link next comes up, 'runq' is
  262.     run which causes the mail to be sent.
  263.  
  264.  
  265. 3.2 Sendmail+IDA
  266.  
  267.     There is a nice binary distribution of sendmail5.65c+IDA on sunsite
  268.     in pub/Linux/system/Mail that I highly recommend.  I run a uucp-only
  269.     site and use sendmail5.65c+IDA instead of smail3.1.28 due to the
  270.     incredible ease of use.
  271.  
  272.    To install it...
  273.     - you'll probably want to remove (or rename) all the files from
  274.         smail (see the /install/installed directory if you are SLS)
  275.         to be safe.
  276.     - cd to / then 'gunzip -c sendmail5.65c+IDA.tpz | tar xvf -'
  277.     - cd to /usr/local/src/sendmail5.65c+IDA/ida/cf and copy the example
  278.         local.m4 file to 'yourhostname.m4'.  Edit out the distributed
  279.         hostname, aliases, and smarthost and put in the correct one
  280.         for your site.  The default file is for a uucp-only site
  281.         who has domainized headers.  Then 'make yourhostname.cf'
  282.         and move the resulting file to /etc/sendmail.cf
  283.     - if you are uucp-only, you do *NOT* need to create any of the 
  284.         tables mentioned in the README.linux file.  Just edit
  285.         the .m4 file, make sendmail.cf, and start testing it.
  286.     - if you're uucp-only and you talk to sites in addition to your
  287.         'smart-host', you'll need to add uucpxtable entries for
  288.         each (or mail to them will also go through the smart host)
  289.         and run dbm against the revised uucpxtable.
  290.     - if you change your .cf file, be sure to refreeze your config
  291.         with /usr/lib/sendmail -bz to make the changes take effect.
  292.  
  293.     Another nice thing is that if you have mail.debug set and you
  294.     run syslogd, your incoming and outgoing mail messages will get 
  295.     logged.  See the /etc/syslog.conf file for details.
  296.  
  297.     There's a new version of sendmail5.67b+IDA1.5 out at ftp.uiuc.edu
  298.     that also compiles and runs fine under Linux.  Grab the older 
  299.     version from sunsite and look in the sources provided there for
  300.     Linux-specific config files. Rich Braun has done a great job in
  301.     'blazing the trail' so getting the current version to compile and
  302.     run properly is as easy as typing 'make'.
  303.  
  304.     If you're going to run sendmail+IDA, I strongly recommend you go
  305.     to the sendmail5.67b+IDA1.5 version since all required Linux-specific
  306.     patches are now in the vanilla sources and several security holes
  307.     have been plugged.
  308.  
  309.     I'm planning to put out an integrated mailx+sendmail5.67b+IDA1.5
  310.     binary kit as soon as I can get around to it (stealing Ian's mailx
  311.     and the new sendmail version based on Rich's original patches).
  312.     Stay tuned...
  313.  
  314.  
  315. 3.3 Sendmail 8.6
  316.  
  317.     Sendmail 8.6.5 from Berkeley is the latest major revision after
  318.     sendmail5.  It has wonderful built-in support for building under
  319.     Linux.  Just 'make linux' and you'll be all set.
  320.  
  321.     
  322. 3.4 Other 'transport agents'
  323.  
  324.     The following also are known to run under Linux.  Consult
  325.     'archie' for details regarding how to find them...
  326.  
  327.         smail2.5 - very simple UUCP-based smail
  328.  
  329.  
  330. 4.0 Mail 'User Agents'
  331.     
  332.     This section contains information related to 'user agents', which
  333.     means the software the user sees and uses.  This software relies on
  334.     the 'transport agents' mentioned above.
  335.  
  336.  
  337. 4.1 Elm
  338.  
  339.     Elm compiles, installs, and runs flawlessly under Linux.  For more
  340.     information, see the elm sources and installation instructions.
  341.  
  342.     The only thing to know is that Elm's Configure script incorrectly
  343.     sets the 'ranlib' variable in config.sh.  When Configure gives you
  344.     the chance to edit config.sh before proceeding, please do so and
  345.     set "ranlib='ranlib'" or the binaries will compile but not link.
  346.  
  347.     Elm and filter need to be mode 2755 (group mail) with
  348.     /usr/spool/mail mode 775 and group mail.
  349.  
  350.     If you use a binary distribution like the one in SLS, you'll need
  351.     to create a /usr/local/lib/elm/elm.rc file to override the compiled-in
  352.     hostname and domain information:
  353.     
  354.     replace 'subdomain.domain' with your domain name
  355.     replace 'myhostname' with you un-domainized hostname
  356.     replace 'my_uucp_neighbor' with the uucp name of your upstream site
  357.  
  358.     #---------- /usr/local/lib/elm/elm.rc ------------------
  359.     #
  360.     # this is the unqualified hostname
  361.     hostname = myhostname
  362.     #
  363.     # this is the local domain
  364.     hostdomain = subdomain.domain
  365.     #
  366.     # this is the fully qualified hostname
  367.     hostfullname = myhostname.subdomain.domain
  368.     #
  369.     #--------------------------------------------------------
  370.  
  371.     One thing you want to be aware of is that if you have Elm compiled
  372.     to be MIME-able, you need metamail installed and in your path or
  373.     Elm will not be able to read MIME mail you've received.  Metamail
  374.     is available on thumper.bellcore.com and of course via 'archie'.
  375.  
  376.  
  377. 4.2 Mailx
  378.  
  379.     There is a fine binary implementation of mailx located on the various
  380.     Linux archive sites.  Make sure you grab version 5.3b or later since
  381.     there are security problems in v5.3a.
  382.  
  383.     The only potential problem I'm aware of is that it seems to be
  384.     compiled in a way that requires /usr/lib/smail rather than
  385.     /usr/lib/sendmail as a transport agent.  You probably need a link
  386.     if you run sendmail on your system.
  387.  
  388.     I strongly recommend removing the old 'edmail' stuff from SLS
  389.     and replacing it with mailx.  This is rumored to be done already
  390.     in the current SLS.
  391.  
  392.  
  393. 4.3 Other user agents
  394.  
  395.     The following also are known to run under Linux.  Consult
  396.     'archie' for details regarding how to find them...
  397.  
  398.     Pine      - from the Univ. of Washington
  399.     Metamail  - allows MIME support
  400.     mh      - yet another way to handle mail
  401.     deliver   - file/process mail based on rules 
  402.     procmail  - file/process mail based on rules
  403.     Majordomo - manages e-mail lists
  404.     Mserv     - provide files-by-mail
  405.     
  406.  
  407. 5.0 Acknowledgements
  408.  
  409.     The following people have helped in the assembly of the information
  410.     (and experience) that helped make this document possible:
  411.  
  412.         Steve Robbins, Ian Kluft, Rich Braun, Ian Jackson, 
  413.         Syd Weinstein, Ralf Sauther, Martin White, Matt Welsh
  414.  
  415.     If I forgot anybody, my apologies...
  416.  
  417.  
  418.